/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package fisica;

import hibernate.Sesion;
import hibernate.objeto.ComposicionMedicamento;
import org.hibernate.Query;

/**
 *
 * @author Gonzalo
 */
public class ComposicionMedicamentoFisica extends CapaFisica {

    /**
     * Retorna el objeto Composicion según la descripcion composicion.
     *
     * @param descripcionComposicionMedicamento La descripción de la composición
     * del medicamento
     * @param estado false si es baja lógica, true si aún activo
     * @return El objeto Composicion consultado, null si no existe
     */
    public static ComposicionMedicamento getComposicionMedicamentoPorNombreYEbBd(
            String descripcionComposicionMedicamento, boolean estado) {
        Query q = Sesion.sesion.createQuery(
                "from ComposicionMedicamento "
                + "where lower(sinacentos(descripcionComposicionMedicamento)) = "
                + "lower(sinacentos('" + descripcionComposicionMedicamento + "')) "
                + "and enBdComposicionMedicamento = " + estado);

        return (ComposicionMedicamento) getObjeto(q);
    }

     /**
     * Retorna el objeto ComposicionMedicamento según el id.
     *
     * @param idComposicionMedicamento  El id del composición medicamento
     * @return El objeto ComposicionMedicamento consultado, null si no existe
     */
    public static ComposicionMedicamento getComposicionMedicamentoPorId(
            int idComposicionMedicamento) {
        Query q = Sesion.sesion.createQuery(
                "from ComposicionMedicamento "
                + "where idComposicionMedicamento = " + idComposicionMedicamento
                );

        return (ComposicionMedicamento) getObjeto(q);
    }

}
